///*
// *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
// *
// *  Redistribution and use in source and binary forms, with or without
// *  modification, are permitted provided that the following conditions are met:
// *
// *  Redistributions of source code must retain the above copyright notice,
// *  this list of conditions and the following disclaimer.
// *  Redistributions in binary form must reproduce the above copyright
// *  notice, this list of conditions and the following disclaimer in the
// *  documentation and/or other materials provided with the distribution.
// *  Neither the name of the dreamlu.net developer nor the names of its
// *  contributors may be used to endorse or promote products derived from
// *  this software without specific prior written permission.
// *  Author: Chill 庄骞 (smallchill@163.com)
// */
//package com.plian.system.controller.dp;
//
//import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
//import com.baomidou.mybatisplus.core.metadata.IPage;
//import com.plian.Tools.Func;
//import com.plian.Tools.StringPool;
//import com.plian.Tools.base.BaseController;
//import com.plian.Tools.pagedata.PageData;
//import com.plian.system.config.Resubmit;
//import com.plian.system.entity.dp.DutyOrganizations;
//import com.plian.system.model.CommonCode;
//import com.plian.system.model.ListResult;
//import com.plian.system.model.R;
//import com.plian.system.mybatis.search.SearchEntity;
//import com.plian.system.mybatis.search.SearchParamEntiy;
//import com.plian.system.mybatis.search.TokenSearch;
//import com.plian.system.mybatis.support.Condition;
//import com.plian.system.mybatis.support.Query;
//import com.plian.system.service.dp.IDutyOrganizationsService;
//import com.plian.system.vo.dp.DutyOrganizationsVO;
//import com.plian.system.wrapper.dp.DutyOrganizationsWrapper;
//import io.swagger.annotations.Api;
//import io.swagger.annotations.ApiOperation;
//import org.apache.commons.lang3.StringUtils;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.bind.annotation.PostMapping;
//import org.springframework.web.bind.annotation.RequestBody;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RestController;
//
//import javax.validation.Valid;
//import java.util.List;
//
///**
// * 责任追究 追责机构控制器
// *
// * @author gangan
// * @since 2021-05-08
// */
//@RestController
//@RequestMapping("api/dutyorganizations")
//@Api(value = "责任追究 追责机构", tags = "责任追究 追责机构接口")
//public class DutyOrganizationsController extends BaseController {
//
//    @Autowired
//    private IDutyOrganizationsService dutyOrganizationsService;
//    @Autowired
//    private DutyOrganizationsWrapper dutyOrganizationsWrapper;
//    /**
//     * 详情
//     */
//    @PostMapping("/detail")
//    @ApiOperation(value = "详情", notes = "传入dutyAnnualWorkReport")
//    public R<DutyOrganizations> detail(@RequestBody DutyOrganizations dutyAnnualWorkReport) {
//        DutyOrganizations detail = dutyOrganizationsService.getOne(Condition.getQueryWrapper(dutyAnnualWorkReport));
//        return R.data(dutyOrganizationsWrapper.entityToVO(detail));
//    }
//
//    /**
//     * 分页 责任追究 追责机构
//     */
//    @PostMapping("/list")
//    @ApiOperation(value = "分页", notes = "传入dutyAnnualWorkReport")
//    public ListResult<DutyOrganizationsVO> list(@RequestBody Query query) {
//        List<SearchEntity> entityList = query.getSearch();
//        if (query.getAscs()==null&&query.getDescs()==null){
//            query.setDescs("create_time");
//        }
//        QueryWrapper<DutyOrganizations> queryWrapper = SearchParamEntiy.getQueryWrapper(
//                Condition.getQueryWrapper(new DutyOrganizations()), entityList
//        );
//        TokenSearch<DutyOrganizations> tokenSearch = new TokenSearch<>();
//		tokenSearch.addTokenQuery(queryWrapper, query);
//
//        IPage<DutyOrganizations> pages = dutyOrganizationsService.page(Condition.getPage(query),queryWrapper);
//        ListResult<DutyOrganizationsVO> listResult = new ListResult<>(CommonCode.SUCCESS);
//        listResult.setList(dutyOrganizationsWrapper.entityToVO(pages.getRecords()));
//        listResult.setTotal(Long.valueOf(pages.getTotal()).intValue());
//
//        return listResult;
//    }
//
//    /**
//     * 新增或修改 责任追究 追责机构
//     */
//    @PostMapping("/submit")
//    @Resubmit(delaySeconds = 0)
//    @ApiOperation(value = "新增或修改", notes = "传入dutyAnnualWorkReport")
//    public R submit(@Valid @RequestBody DutyOrganizations dutyAnnualWorkReport) {
//        if (StringUtils.isBlank(dutyAnnualWorkReport.getCompanyNameId())){
//            return R.fail("单位id为空");
//        }
//        if (!dutyOrganizationsService.checkIsExisted(dutyAnnualWorkReport.getId(), dutyAnnualWorkReport.getCreateCompanyId())){
//            return R.fail("该单位已填报");
//        }
//        return R.status(dutyOrganizationsService.saveOrUpdate(dutyAnnualWorkReport));
//    }
//
//
//    /**
//     * 删除 责任追究 追责机构
//     */
//    @PostMapping("/remove")
//    @ApiOperation(value = "逻辑删除", notes = "传入ids")
//    public R remove(@RequestBody PageData pd) {
//        List<String> ids = (List<String>)pd.get("ids");
//        return R.status(dutyOrganizationsService.deleteLogic(Func.toLongList(StringUtils.join(ids, StringPool.COMMA))));
//    }
//}
